1. Field of the Invention
This invention relates to message display methods and systems for reproduction of DML objects used in relational databases. In addition, this invention also relates to storage media storing programs actualizing the message display methods and systems.
This application is based on Patent Application No. Hei 11-56198 filed in Japan, the content of which is incorporated herein by reference.
2. Description of the Related Art
There are provided a variety of papers regarding techniques for relational databases and data manipulation language (i.e., DML), as follows:
Japanese Patent No. 2,641,402 (corresponding to Japanese Patent Application, First Publication No. Hei 8-202599) discloses a DML object management system, in which executable DML objects are automatically reproduced to eliminate necessity in user""s correction and recompilation of DML objects in response to updating of table definitions of relational databases.
Japanese Patent Application, First Publication No. Hei 6-103125 discloses an update processing system for a database management system (DBMS), in which a processing time is reduced in a conditioned update process with respect to an index retrieval for a record location of an UPDATE statement.
Japanese Patent Application, First Publication No. Hei 7-160558 discloses a database retrieve statement creation device, in which programmers are eased in loads working on creation of source programs because work areas are provided only for columns used for application programs without making definitions to view tables.
Japanese Patent Application, First Publication No. Hei 1-211029 discloses a database manipulation language processing system, in which interfaces for database management languages commonly used for user programs are provided to enable databases to be shared and managed among distributed database management systems.
In general, relational databases consist of tables made up of rows and columns. Herein, a column corresponds to a minimum unit for data being input, and a table is a set of rows which are not sorted in order and is provided for users. In the relational database, specific parts of application programs that are created by users are used for accessing tables and are converted to DML objects that are executable forms written in a database manipulation language (or data manipulation language, i.e., DML) in compilation, so that the DML objects are stored in DML object libraries and directory files together with table definition information.
Access to the relational database is made by describing queries with a structured query language (i.e., SQL) in an application program that is written by a host language. Herein, the host language is a normal programming language such as COBOL and C. A data transfer between the host language and structured query language is performed by way of special variables of the host language (i.e., host variables).
In compilation of a user program, for example, parts of the program written in the structured query language are extracted to produce database access measures (i.e., DML objects) that are optimal measures to access the database. A DML object library is a database file that is used to store the DML objects. That is, the DML objects being produced are stored in the DML object library, and information regarding the user program is simultaneously stored in a directory file. The user program is made using SQL-DML statements, for example. If a table definition is changed, optimal database access measures are reproduced based on the SQL-DML statements that are extracted from the user program. This technique is disclosed by JIII Journal of Technical Disclosure No. 96-13681 in Japan, entitled xe2x80x9cAutomatic Reproduction Functions of DML Objectsxe2x80x9d.
FIG. 10 is a flowchart showing conventional procedures for reproduction of DML objects at a table definition change mode. Those procedures are provided to cope with a column addition event or an event in which table definition is changed with respect to a column (or columns). In case of the column addition event, the present system searches through a DML object library to retrieve DML objects in step S101. In step S102, the system checks each of the DML objects being retrieved. That is, a decision is made as to whether the DML object uses the (added) column of the table whose definition is changed or not. In step S103, the system selects such DML object. In step S104, the DML object is subjected to automatic reproduction. In step S105, a reproduction result is displayed, wherein a message of xe2x80x9cAP1 (e.g., a name of a DML object) reproducedxe2x80x9d is displayed on a screen, for example. In this case, however, the DML objects using original columns of the table are excluded from subjects for the automatic reproduction in the column addition event in which the column is added by changing the table definition. So, they are not at all displayed on the screen.
Conventionally, if the table definition is changed with respect to the column(s) that is not used in the user program, the user is not informed of a reproduction result of the DML object(s). In addition, it takes much time and work to extract some user program(s) from hundreds of user programs in response to changes of table definitions. That is, it takes much time and work to make a search as to which of the user programs refers to the table whose definition is changed. In order to add columns to the table, it is necessary to define host variables used in SQL-DML statements. In some cases, however, it is not good in performance to define the host variables whose lengths well match with attributes. Because, the user programs have not yet used the added columns and lacked functions to check them.
It is an object of the invention to provide a message display method and a message display system, which support users to smoothly and promptly change user programs in response to addition of columns to tables in reproduction of DML objects.
It is another object of the invention to provide storage media recording programs corresponding to the message display method and system.
According to an outline of the invention, when a column is added by changing table definition so that the user program is being reproduced, the method or system clearly shows the added column for the DML object that uses the table whose definition is changed. In addition, it also shows definitions of a host variable, which is required when the user program refers to the added column.
A message display system (and method) of this invention is basically provided for DML object reproduction in a relational database in which DML objects for accessing tables made up with rows and columns are made from user programs in compilation and are registered in a DML object library. Herein, DML objects are produced by compilation of the user programs each containing SQL statements, so that the DML objects are registered in the DML object library. In response to a change of table definition of a designated table within the tables, the user programs are subjected to analysis to select a user program related to the designated table whose definition is changed with reference to the DML object library, so that a DML object is automatically reproduced in connection with the selected user program using the designated table. In addition, a reproduction result is displayed on a screen.
If the change of the table definition designates addition of a column to the designated table, messages are displayed on the screen to inform the user of the addition of the column to the designated table as well as a host variable which is required when the selected user program refers to the column being added to the designated table. Incidentally, the host variable is selected and displayed in connection with a using language used for compilation, which is examined with reference to a directory storing DML object management information. Moreover, examination is made on an attribute and a length of the column being added to the designated table as well.
Thus, it is possible to support the user to promptly and smoothly search and correct the user program in response to a change of table definition designating addition of a column to the designated table.